### Directories ###
ncmpcpp_directory = ~/.config/ncmpcpp
lyrics_directory  = ~/.config/ncmpcpp/lyrics
mpd_music_dir     = ~/music

### Behaviour ###
message_delay_time = 1
autocenter_mode = "yes"
centered_cursor = "yes"
ignore_leading_the = "no"
allow_for_physical_item_deletion = "no"

### Integration with external programs ###
execute_on_song_change = "bash ~/.config/ncmpcpp/music-notify.sh"
external_editor = "vim"
use_console_editor = yes
mouse_support = "yes"
mouse_list_scroll_whole_page = "no"
lines_scrolled = "1"

### Appearance( or at least some part of it ) ###
# user_interface = "classic"
user_interface = "alternative"
# alternative_ui_separator_color = "magenta" # it's some bar on top separating the songs from status data
colors_enabled = "yes"
# from the docs: One of the colors used in Song info, Tiny tag editor and Search engine
color1 = "magenta"
# from the docs: One of the colors used in Song info, Tiny tag editor and Search engine
color2 = "green"
# Columns color #
# this is basically the color that they use to color columns and some of the text
main_window_color = "red"
# main_window_highlight_color = "green" # deprecated, use the two below
current_item_prefix = "$(red)$r"
current_item_suffix = "$/r$(green)"
# state_line_color = "blue"
# state_flags_color = "green" #this seems to change color of volume displayer

### Window ###
song_window_title_format = "{%a - }{%t}|{%f}"
statusbar_visibility = "yes"
header_visibility = "no"
titles_visibility = "no"

### Progress bar ###
#progressbar_look = "⠒⠒⠐"
# progressbar_look = "•••"
#progressbar_look = "---"
# progressbar_look = "▀▀ "
# progressbar_look = "╼·"
# progressbar_look = "━━━"
progressbar_look = "━━─"
#progressbar_look = "◾◾◽"
# progressbar_look = "─╼─"
progressbar_color = "black"
progressbar_elapsed_color = "default" #this basically sets it to the foreground color

### Song status ###
# this is the info you're shown as whether the song is playing, 
# which song is playing, etc etc.
#now_playing_prefix = "$b"
#now_playing_suffix = "$/b"
# song_status_format = "$b$6%t$/b {$0by} $b$2%a$8$/b"
song_status_format = " {$b$6%a $b$0- $b$3%t}|{$b%f}"
# song_status_format = "$8%t $9• $2%a $9•{ $5%b $9• }$7%y$9"
### Song status for the alternative status display
# alternative_header_first_line_format = "$b$1$aqqu$/a$9 {%t}|{%f} $1$atqq$/a$9$/b"
alternative_header_first_line_format = "$b$1$aqqu$/a$9 {%t}|{%f} $1$atqq$/a$9$/b"

### Pop-up menu ###
# when adding songs to playlists for example, you're shown a pop up. 
# these are their color settings
# active_column_color = yellow
# window_border_color = green
# active_window_border = yellow

###################
### Screen 1
###################
# Song columns format #
# This is basically the first screen (1)
# song_columns_list_format = "$L(9)[white]{l} (20)[red]{a} (30)[green]{b}$R(20)[cyan]{t}"
# song_columns_list_format = "(25)[white]{a} (25)[blue]{brE} (47)[white]{t|f} (6f)[blue]{l}"
# song_columns_list_format = "(15)[yellow]{lr} (1)[black]{} (40)[red]{a} (40)[green]{t}"
# song_columns_list_format = "(40)[magenta]{ar} (40)[green]{t}" # this one is like the one below, but not quite centered
song_columns_list_format = "(50)[magenta]{ar} (50)[green]{t}"
playlist_display_mode = "columns" #possible values: columns/classic

###################
### Screen 2
###################
# Song list #
# basically, by default this is screen number 2 (just press 2 on your keyboard)
# song_list_format = "{$8%a ⠂ }{%t}$R{%l}"
song_list_format = "{{$6%a $3}{%t}}|{%f} $R$5%b $5%l"

###################
### Screen 3
###################
# Search engine
search_engine_display_mode = "classic" # this only shows in the songs found

###################
### Screen 4
###################
# Song library #
# this is basically shown if you press two times on the 4th screen
# I'd like that one to be displayed by default but don't yet know how to do it
song_library_format = "{{$b$6%a} {$3%t}}|{$b$5%f}"

###################
### Screen 5
###################
# Playlist 
# options: classic/columns
playlist_editor_display_mode = "classic"

###################
### Screen 6
###################
# Tag editor
# Currently there's nothing configured for it

###################
### Screen 7
###################
# there's a menu on screen 7, but you can't really configure it much

###################
### Screen 8
###################
### Visualizer ###  
visualizer_fifo_path = /tmp/mpd.fifo
visualizer_output_name = "mpd_visualizer"
visualizer_in_stereo = "yes"
visualizer_sync_interval = 30

###############################################################################

##### connection settings #####
#
#mpd_host = localhost
#
#mpd_port = 6600
#
#mpd_connection_timeout = 5
#
## Needed for tag editor and file operations to work.
##
#mpd_music_dir = ~/music
#
#mpd_crossfade_time = 5
#
##### music visualizer #####
##
## Note: In order to make music visualizer work you'll
## need to use mpd fifo output, whose format parameter
## has to be set to 44100:16:1 for mono visualization
## or 44100:16:2 for stereo visualization. Example
## configuration (it has to be put into mpd.conf):
##
## audio_output {
##        type            "fifo"
##        name            "Visualizer feed"
##        path            "/tmp/mpd.fifo"
##        format          "44100:16:2"
## }
##
#
#visualizer_fifo_path = /tmp/mpd.fifo
#
##
## Note: Below parameter is needed for ncmpcpp
## to determine which output provides data for
## visualizer and thus allow syncing between
## visualization and sound as currently there
## are some problems with it.
##
#
#visualizer_output_name = Visualizer feed
#
##
## If you set format to 44100:16:2, make it 'yes'.
##
#visualizer_in_stereo = yes
#
##
## Multiply received samples by given value. Very
## useful for proper visualization of quiet music.
##
#
##
## Note: Below parameter defines how often ncmpcpp
## has to "synchronize" visualizer and audio outputs.
## 30 seconds is optimal value, but if you experience
## synchronization problems, set it to lower value.
## Keep in mind that sane values start with >=10.
##
#
#visualizer_sync_interval = 30
#
##
## Note: To enable spectrum frequency visualization
## you need to compile ncmpcpp with fftw3 support.
##
#
## Available values: spectrum, wave, wave_filled, ellipse.
##
#visualizer_type = wave
#
#visualizer_look = ●▮
#
#visualizer_color = blue, cyan, green, yellow, magenta, red
#
## Alternative subset of 256 colors for terminals that support it.
##
#visualizer_color = 41, 83, 119, 155, 185, 215, 209, 203, 197, 161
#
##### system encoding #####
##
## ncmpcpp should detect your charset encoding
## but if it failed to do so, you can specify
## charset encoding you are using here.
##
## Note: You can see whether your ncmpcpp build
## supports charset detection by checking output
## of `ncmpcpp --version`.
##
## Note: Since MPD uses UTF-8 by default, setting
## this option makes sense only if your encoding
## is different.
##
#
#system_encoding = ""
#
##### delays #####
#
## Time of inactivity (in seconds) after playlist
## highlighting will be disabled (0 = always on).
##
#playlist_disable_highlight_delay = 5
#
## Defines how long messages are supposed to be visible.
##
#message_delay_time = 5
#
##### song format #####
##
## For a song format you can use:
##
## %l - length
## %f - filename
## %D - directory
## %a - artist
## %A - album artist
## %t - title
## %b - album
## %y - date
## %n - track number (01/12 -> 01)
## %N - full track info (01/12 -> 01/12)
## %g - genre
## %c - composer
## %p - performer
## %d - disc
## %C - comment
## %P - priority
## $R - begin right alignment
##
## If you want to make sure that a part of the format is displayed
## only when certain tags are present, you can archieve it by
## grouping them with brackets, e.g. '{%a - %t}' will be evaluated
## to 'ARTIST - TITLE' if both tags are present or '' otherwise.
## It is also possible to define a list of alternatives by providing
## several groups and separating them with '|', e.g. '{%t}|{%f}'
## will be evaluated to 'TITLE' or 'FILENAME' if the former is not
## present.
##
## Note: If you want to set limit on maximal length of a tag, just
## put the appropriate number between % and character that defines
## tag type, e.g. to make album take max. 20 terminal cells, use '%20b'.
##
## In addition, formats support markers used for text attributes.
## They are followed by character '$'. After that you can put:
##
## - 0 - default window color (discards all other colors)
## - 1 - black
## - 2 - red
## - 3 - green
## - 4 - yellow
## - 5 - blue
## - 6 - magenta
## - 7 - cyan
## - 8 - white
## - 9 - end of current color
## - b - bold text
## - u - underline text
## - r - reverse colors
## - a - use alternative character set
##
## If you don't want to use a non-color attribute anymore, just put it
## again, but this time insert character '/' between '$' and attribute
## character, e.g. {$b%t$/b}|{$r%f$/r} will display bolded title tag
## or filename with reversed colors.
##
## If you want to use 256 colors and/or background colors in formats
## (the naming scheme is described below in section about color
## definitions), it can be done with the syntax $(COLOR), e.g. to set
## the artist tag to one of the non-standard colors and make it have
## yellow background, you need to write $(197_yellow)%a$(end). Note
## that for standard colors this is interchangable with attributes
## listed above.
##
## Note: colors can be nested.
##
#
#song_list_format = {%a - }{%t}|{$8%f$9}$R{$3(%l)$9}
#
#song_status_format = {{%a{ "%b"{ (%y)}} - }{%t}}|{%f}
#
#song_library_format = {%n - }{%t}|{%f}
#
#
#alternative_header_first_line_format = $b$1$aqqu$/a$9 {%t}|{%f} $1$atqq$/a$9$/b
#
#alternative_header_second_line_format = {{$4$b%a$/b$9}{ - $7%b$9}{ ($4%y$9)}}|{%D}
#
#now_playing_prefix = $b
#
#now_playing_suffix = $/b
#
#browser_playlist_prefix = "$2playlist$9 "
#
#selected_item_prefix = $6
#
#selected_item_suffix = $9
#
#modified_item_prefix = $3> $9
#
##
## Note: attributes are not supported for the following variables.
##
#song_window_title_format = {%a - }{%t}|{%f}
##
## Note: Below variables are used for sorting songs in browser.
## The sort mode determines how songs are sorted, and can be used
## in combination with a sort format to specify a custom sorting format.
## Available values for browser_sort_mode are "name", "mtime", "format"
## and "noop".
##
#
#browser_sort_mode = name
#
#browser_sort_format = {%a - }{%t}|{%f} {(%l)}
#
##### columns settings #####
##
## syntax of song columns list format is "column column etc."
##
## - syntax for each column is:
##
## (width of the column)[color of the column]{displayed tag}
##
## Note: Width is by default in %, if you want a column to
## have fixed size, add 'f' after the value, e.g. (10)[white]{a}
## will be the column that take 10% of screen (so the real width
## will depend on actual screen size), whereas (10f)[white]{a}
## will take 10 terminal cells, no matter how wide the screen is.
##
## - color is optional (if you want the default one,
##   leave the field empty).
##
## Note: You can give a column additional attributes by putting appropriate
## character after displayed tag character. Available attributes are:
##
## - r - column will be right aligned
## - E - if tag is empty, empty tag marker won't be displayed
##
## You can also:
##
## - give a column custom name by putting it after attributes,
##   separated with character ':', e.g. {lr:Length} gives you
##   right aligned column of lengths named "Length".
##
## - define sequence of tags, that have to be displayed in case
##   predecessor is empty in a way similar to the one in classic
##   song format, i.e. using '|' character, e.g. {a|c|p:Owner}
##   creates column named "Owner" that tries to display artist
##   tag and then composer and performer if previous ones are
##   not available.
##
#
#song_columns_list_format = (20)[]{a} (6f)[green]{NE} (50)[white]{t|f:Title} (20)[cyan]{b} (7f)[magenta]{l}
#
##### various settings #####
#
##
## Note: Custom command that will be executed each
## time song changes. Useful for notifications etc.
##
#execute_on_song_change = ""
#
#playlist_show_mpd_host = no
#
#playlist_show_remaining_time = no
#
#playlist_shorten_total_times = no
#
#playlist_separate_albums = no
#
##
## Note: Possible display modes: classic, columns.
##
#playlist_display_mode = columns
#
#browser_display_mode = classic
#
#search_engine_display_mode = classic
#
#playlist_editor_display_mode = classic
#
#discard_colors_if_item_is_selected = yes
#
#incremental_seeking = yes
#
#seek_time = 1
#
#volume_change_step = 2
#
#autocenter_mode = no
#
#centered_cursor = no
#
##
## Note: You can specify third character which will
## be used to build 'empty' part of progressbar.
##
#progressbar_look = =>
#
#progressbar_color
#progressbar_elapsed_color
#
## Available values: database, playlist.
##
#default_place_to_search_in = database
#
## Available values: classic, alternative.
##
#user_interface = classic
#
#data_fetching_delay = yes
#
## Available values: artist, album_artist, date, genre, composer, performer.
##
#media_library_primary_tag = artist
#
## Available values: wrapped, normal.
##
#default_find_mode = wrapped
#
#default_tag_editor_pattern = %n - %t
#
#header_visibility = yes
#
#statusbar_visibility = yes
#
#titles_visibility = yes
#
#header_text_scrolling = yes
#
#cyclic_scrolling = no
#
#lines_scrolled = 2
#
#follow_now_playing_lyrics = no
#
#fetch_lyrics_for_current_song_in_background = no
#
#store_lyrics_in_song_dir = no
#
#generate_win32_compatible_filenames = yes
#
#allow_for_physical_item_deletion = no
#
##
## Note: If you set this variable, ncmpcpp will try to
## get info from last.fm in language you set and if it
## fails, it will fall back to english. Otherwise it will
## use english the first time.
##
## Note: Language has to be expressed as an ISO 639 alpha-2 code.
##
#lastfm_preferred_language = en
#
#show_hidden_files_in_local_browser = no
#
##
## How shall screen switcher work?
##
## - "previous" - switch between the current and previous screen.
## - "screen1,...,screenN" - switch between given sequence of screens.
##
## Screens available for use: help, playlist, browser, search_engine,
## media_library, playlist_editor, tag_editor, outputs, visualizer, clock.
##
#screen_switcher_mode = playlist, browser
#
##
## Note: You can define startup screen
## by choosing screen from the list above.
##
#startup_screen = playlist
#
##
## Note: You can define startup slave screen
## by choosing screen from the list above or
## an empty value for no slave screen.
##
#startup_slave_screen = ""
#
#startup_slave_screen_focus = no
#
##
## Default width of locked screen (in %).
## Acceptable values are from 20 to 80.
##
#
#locked_screen_width_part = 50
#
#ask_for_locked_screen_width_part = yes
#
#jump_to_now_playing_song_at_start = yes
#
#ask_before_clearing_playlists = yes
#
#clock_display_seconds = no
#
#display_volume_level = yes
#
#display_bitrate = no
#
#display_remaining_time = no
#
## Available values: none, basic, extended, perl.
##
#regular_expressions = perl
#
##
## Note: If below is enabled, ncmpcpp will ignore leading
## "The" word while sorting items in browser, tags in
## media library, etc.
##
#ignore_leading_the = no
#
#block_search_constraints_change_if_items_found = yes
#
#mouse_support = yes
#
#mouse_list_scroll_whole_page = yes
#
#empty_tag_marker = <empty>
#
#tags_separator = " | "
#
#tag_editor_extended_numeration = no
#
#media_library_sort_by_mtime = no
#
#enable_window_title = yes
#
##
## Note: You can choose default search mode for search
## engine. Available modes are:
##
## - 1 - use mpd built-in searching (no regexes, pattern matching)
## - 2 - use ncmpcpp searching (pattern matching with support for regexes,
##       but if your mpd is on a remote machine, downloading big database
##       to process it can take a while
## - 3 - match only exact values (this mode uses mpd function for searching
##       in database and local one for searching in current playlist)
##
#
#search_engine_default_search_mode = 1
#
#external_editor = nano
#
## Note: set to yes if external editor is a console application.
##
#use_console_editor = yes
#
##### colors definitions #####
##
## It is possible to set a background color by setting a color
## value "<foreground>_<background>", e.g. red_black will set
## foregound color to red and background color to black.
##
## In addition, for terminals that support 256 colors it
## is possible to set one of them by using a number in range
## [1, 256] instead of color name, e.g. numerical value
## corresponding to red_black is 2_1. To find out if the
## terminal supports 256 colors, run ncmpcpp and check out
## the bottom of the help screen for list of available colors
## and their numerical values.
##
## Note: due to technical limitations of ncurses, if 256 colors
## are used, it is possible to either use only the colors with
## default background color, or all pairs from 1_1 up to 254_127,
## depending on the ncurses version used.
##
#
#colors_enabled = yes
#
#empty_tag_color = cyan
#
#header_window_color = default
#
#volume_color = default
#
#state_line_color = default
#
#state_flags_color = default
#
#main_window_color = blue
#
#color1 = white
#
#color2 = green
#
#current_item_prefix = "$(green)$r"
#current_item_suffix = "$/r$(end)"
#
#progressbar_color = black
#
#progressbar_elapsed_color = green
#
#statusbar_color = default
#
#alternative_ui_separator_color = black
#
#active_column_color = red
#
#window_border_color = green
#
#active_window_border = red
#
